package com.xunfang.controller;

import com.xunfang.bean.User;
import org.springframework.web.bind.annotation.*;

/**
 * @author yellow Doctor
 * @date 2025-09-12
 * @desc https://blog.csdn.net/hekai7217
 */
@RestController
public class UserController {

    @GetMapping("/user")
    public String data1(String id){
        return  "收到数据:" + id;
    }

    @PostMapping("/user")
    public String data2(@RequestBody User user){
        return  "收到数据:" + user.getUsername();
    }


    public String handler(User user){return "";}

    /**
     *
     *   前端发送数据的几种方式：
     *   1、表单提交数据
     *       get:  http://localhost:8080/user?username=admin&password=123
     *       服务器获取:
     *             使用对象接受数据: (对象的属性和 提交数据的key 保持一致)
     *              public String handler(User user){
     *                  return "";
     *              }
     *       post:  http://localhost:8080/user
     *                       payLoad: username=admin
     *                                password=123
     *       服务器获取:
     *             使用对象接受数据
     *             public String handler(User user){return "";}
     *
     *   2、url上面提交数据:
     *      get:  http://localhost:8080/user/123
     *      服务器获取数据:
     *          通过注解: @PathVariable
     *          public String handler(@PathVariable String id){}
     *
     *   3、axios 发送数据
     *       get
     *             axios.get('/user?id=12345')
     *             axios.get('/user',{
     *                 params:{
     *                     id:234
     *                 }
     *             })
     *           服务器获取数据:
     *              通过提交的key 直接绑定获取数据
     *              public String handler(String id){}
     *              通过提交的key 直接封装对象 获取数据
     *              public String handler(User user){return "";}
     *
     *       post
     *           axios.post('/user',{
     *                 "username":"admin",
     *                 "password":"123"
     *           })
     *        服务器获取数据:
     *             通过 @RequestBody 拿到json 数据转成 对象进行绑定
     *             public String handler(@RequestBody User user){
     *
     *             }
     */
}
